<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>php学习笔记[042]</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="show"><span>042 php通过mail或socket发从邮件 </span></div>
<?php include 'include/top.php';?>
<div class="text">
<b>mail()</b>
<strong>mail()</strong>函数发送邮件使用十分简单，但是由于其复杂的配置，不良好的移植性使得使用的人很少，他需要一个类是sendmail的组件支持，需要在php.ini文件中配置相关的smtp的配置<br />
我们这里只提一下他的用法，而不做深入的讲解<br />
<strong>mail(收件人,标题,正文);</strong>
</div>
<div class="text">
<b>socket</b>
<strong>socket</strong>良好的移植性但是其不友好的操作让使用的人比较麻烦。让人已经有人做了很成熟的类我们可以直接拿过来使用<br />
我们把这个类放到include文件夹我们看下面的演示：<br />
<div class="code">
  &lt;?php<br />
    include 'include/email_class.php';<br />
    $smtpserver = &quot;smtp.163.com&quot;;//SMTP服务器<br />
    $smtpserverport =25;//SMTP服务器端口<br />
    $smtpuser = &quot;deep_think@163.com&quot;;//SMTP服务器的用户帐号<br />
    $smtppass = &quot;123456&quot;;//SMTP服务器的用户密码<br />
    $smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.
  //=========================配置邮箱============================================<br />
    if(isset($_POST['sub'])){<br />
    $mail = $_POST['mailadd'];//收件人<br />
    $title =iconv('utf-8','GBK',$_POST['title']);//邮件主题<br />
    $content = $_POST['content'];//邮件内容<br />
    $type = &quot;HTML&quot;;//邮件格式（HTML/TXT）,TXT为文本邮件<br />
    $smtp-&gt;debug = FALSE;//是否显示发送的调试信息<br />
    $smtp-&gt;sendmail($mail, $smtpuser, $title, $content, $type);<br />
    }<br />
    ?&gt;<br />
    &lt;form name=&quot;mail&quot; method=&quot;post&quot;&gt;<br />
    收件人&lt;input name=&quot;mailadd&quot; size=&quot;80&quot;&gt;&lt;br /&gt;<br />
    标&amp;emsp;题&lt;input name=&quot;title&quot; size=&quot;108&quot;&gt;&lt;br /&gt;<br />
    内容:&lt;textarea name=&quot;content&quot; cols=&quot;108&quot; rows=&quot;5&quot;&gt;&lt;/textarea&gt;<br />
    &lt;input type=&quot;submit&quot; name=&quot;sub&quot; value=&quot;发送&quot;&gt;<br />
    &lt;/form&gt;<br />
 
</div>
我们可以使用这个代码来发送邮件了！
<div class="effect">
<?php
include 'include/email_class.php';
$smtpserver = "smtp.163.com";//SMTP服务器
$smtpserverport =25;//SMTP服务器端口
$smtpuser = "deep_think@163.com";//SMTP服务器的用户帐号
$smtppass = "yl11fc0";//SMTP服务器的用户密码
$smtp = new smtp($smtpserver,$smtpserverport,true,$smtpuser,$smtppass);//这里面的一个true是表示使用身份验证,否则不使用身份验证.

//=========================配置邮箱============================================
if(isset($_POST['sub'])){
$mail = $_POST['mailadd'];//收件人
$title =iconv('utf-8','GBK',$_POST['title']);//邮件主题
$content = $_POST['content'];//邮件内容
$type = "HTML";//邮件格式（HTML/TXT）,TXT为文本邮件
$smtp->debug = FALSE;//是否显示发送的调试信息
$smtp->sendmail($mail, $smtpuser, $title, $content, $type);
}
?>
<form name="mail" method="post">
收件人<input name="mailadd" size="80"><br />
标&emsp;题<input name="title" size="108"><br />
内容:<textarea name="content" cols="108" rows="5"></textarea>
<input type="submit" name="sub" value="发送">
</form>
</div>
</div>


</body>
</html>
